New Lace and Arsenic: adventures in weak memory with a program logic
نویسندگان
چکیده
We describe a program logic for weak memory (also known as relaxed memory). The logic is based on Hoare logic within a thread, and rely/guarantee between threads. It is presented via examples, giving proofs of many weak-memory litmus tests. It extends to coherence but not yet to synchronised assignment (compare-and-swap, load-logical/store-conditional). It deals with conditionals and loops but not yet arrays or heap. The logic uses a version of Hoare logic within threads, and a version of rely/guarantee between threads, with five stability rules to handle various kinds of parallelism (external, internal, propagation-free and two kinds of in-flight parallelism). There are B and U modalities to handle propagation, and temporal modalities since, Sofar and Ouat to deal with global coherence (SC per location). The logic is presented by example. Proofs and unproofs of about thirty weak-memory examples, including many litmus tests in various guises, are dealt with in detail. There is a proof of a version of the token ring. A note on authorship This paper reports the joint work of its authors. But the words in the paper were written by Richard Bornat. Any opprobrium, bug reports, complaints, and observations about sins of commission or omission should be directed at him. A note on version 2 The correspondence with Herding Cats has been clarified. The stability rules have been simplified: in particular the sat and x=x̂ tests have been eliminated from external stability checks. The embedding is simplified and has a more transparent relation to the mechanisms of the logic. Definitions of U, Sofar and Ouat have been considerably altered. The description of modalities and the treatment of termination has been reworked. Many proofs are reconstructed. A comprehensive summary of the logic is an appendix. ar X iv :1 51 2. 01 41 6v 2 [ cs .L O ] 4 N ov 2 01 6
منابع مشابه
Propranolol–induced Impairment of Contextual Fear Memory Reconsolidation in Rats: A Similar Effect on Weak and Strong Recent and Remote Memories
Introduction: Previous studies have demonstrated that the &beta-adrenergic receptor antagonist propranolol impairs fear memory reconsolidation in experimental animals. There are experimental parameters such as the age and the strength of memory that can interact with pharmacological manipulations of memory reconsolidation. In this study, we investigated the ability of the age and the strength o...
متن کاملSpecifying Weak Memory Consistency with Temporal Logic
Modern multiprocessors only provide weak memory consistency that deviates from the traditional sequential consistency in many unintuitive ways: In essence, the read and write operations issued by one processor might be observed by other processors in a different order than executed by the issuing processor. It is therefore strongly recommended to formally verify multithreaded systems. To this e...
متن کاملApplications of Fuzzy Program Graph in Symbolic Checking of Fuzzy Flip-Flops
All practical digital circuits are usually a mixture of combinational and sequential logic. Flip–flops are essential to sequential logic therefore fuzzy flip–flops are considered to be among the most essential topics of fuzzy digital circuit. The concept of fuzzy digital circuit is among the most interesting applications of fuzzy sets and logic due to the fact that if there has to be an ultimat...
متن کاملEffects of Lace-up and Aircast Ankle Braces on Dynamic Postural Control in Functional Fatigue Condition: A Study on Volleyball Players with Ankle Instability
Purpose: To determine the more effective ankle brace (lace-up or Aircast ankle brace) at providing dynamic postural control in volleyball players with unstable ankle under functional fatigue conditions. Methods: Subjects of this study participated in 3 separate testing sessions and did not use or used a different brace at each session i.e. no brace (NB), lace-up ankle brace (AB), and Airca...
متن کاملAutomating Deductive Verification for Weak-Memory Programs
Writing correct programs for weak memory models such as the C11 memory model is challenging because of the weak consistency guarantees these models provide. The first program logics for the verification of such programs have recently been proposed, but their usage has been limited thus far to manual proofs. Automating proofs in these logics via first-order solvers is non-trivial, due to reasoni...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1512.01416 شماره
صفحات -
تاریخ انتشار 2015